home *** CD-ROM | disk | FTP | other *** search
/ PC World 2007 November / PCWorld_2007-11_cd.bin / domácnost a kancelar / opencontacts / setup.exe / {app} / DataSet / Templates / SyncMLSIF.xsl < prev    next >
Encoding:
Extensible Markup Language  |  2007-09-09  |  12.7 KB  |  339 lines

  1. ∩╗┐<?xml version="1.0" encoding="UTF-8"?>
  2. <!--For exporting contacts to Sync4j Interchange Format (SIF) -- SIF-C
  3. -->
  4. <xsl:stylesheet version="1.0"
  5. xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
  6.   <xsl:output method="xml" encoding="UTF-8" />
  7.  
  8.   <xsl:template match="/">
  9.  
  10.  
  11.  
  12.     <xsl:for-each select="OpenContacts/Contacts/Contact">
  13.  
  14.       <contact>
  15.         <LastName>
  16.           <xsl:value-of select="@Surname"/>
  17.         </LastName>
  18.         <FirstName>
  19.           <xsl:value-of select="@GivenName"/>
  20.         </FirstName>
  21.         <MiddleName>
  22.           <xsl:value-of select="@MidName"/>
  23.         </MiddleName>
  24.         <Title>
  25.           <xsl:value-of select="@Title"/>
  26.         </Title>
  27.         <Body>
  28.           <xsl:value-of select="Notes"/>
  29.         </Body>
  30.         <xsl:for-each select="Sections/Section">
  31.           <xsl:choose>
  32.             <xsl:when test="@Name='Personal'">
  33.  
  34.               <xsl:for-each select="Fields/Field">
  35.                 <xsl:choose>
  36.                   <xsl:when test="@Name='Phone'">
  37.                     <HomeTelephoneNumber>
  38.                       <xsl:value-of select="@Value"/>
  39.                     </HomeTelephoneNumber>
  40.                   </xsl:when>
  41.                   <xsl:when test="@Name='Phone2'">
  42.                     <Home2TelephoneNumber>
  43.                       <xsl:value-of select="@Value"/>
  44.                     </Home2TelephoneNumber>
  45.                   </xsl:when>
  46.                   <xsl:when test="@Name='Fax'">
  47.                     <HomeFaxNumber>
  48.                       <xsl:value-of select="@Value"/>
  49.                     </HomeFaxNumber>
  50.                   </xsl:when>
  51.                   <xsl:when test="@Name='City'">
  52.                     <HomeAddressCity>
  53.                       <xsl:value-of select="@Value"/>
  54.                     </HomeAddressCity>
  55.                   </xsl:when>
  56.                   <xsl:when test="@Name='Country'">
  57.                     <HomeAddressCountry>
  58.                       <xsl:value-of select="@Value"/>
  59.                     </HomeAddressCountry>
  60.                   </xsl:when>
  61.                   <xsl:when test="@Name='Postcode'">
  62.                     <HomeAddressPostalCode>
  63.                       <xsl:value-of select="@Value"/>
  64.                     </HomeAddressPostalCode>
  65.                   </xsl:when>
  66.                   <xsl:when test="@Name='PO Box'">
  67.                     <HomeAddressPostOfficeBox>
  68.                       <xsl:value-of select="@Value"/>
  69.                     </HomeAddressPostOfficeBox>
  70.                   </xsl:when>
  71.                   <xsl:when test="@Name='State'">
  72.                     <HomeAddressState>
  73.                       <xsl:value-of select="@Value"/>
  74.                     </HomeAddressState>
  75.                   </xsl:when>
  76.                   <xsl:when test="@Name='Street'">
  77.                     <HomeAddressStreet>
  78.                       <xsl:value-of select="@Value"/>
  79.                     </HomeAddressStreet>
  80.                   </xsl:when>
  81.                   <xsl:when test="@Name='Address'">
  82.                     <HomeLabel>
  83.                       <xsl:value-of select="@Value"/>
  84.                     </HomeLabel>
  85.                   </xsl:when>
  86.                   <xsl:when test="@Name='Web'">
  87.                     <WebPage>
  88.                       <xsl:value-of select="@Value"/>
  89.                     </WebPage>
  90.                   </xsl:when>
  91.                   <xsl:when test="@Name='Hobby'">
  92.                     <Hobby>
  93.                       <xsl:value-of select="@Value"/>
  94.                     </Hobby>
  95.                   </xsl:when>
  96.                   <xsl:when test="@Name='Gender'">
  97.                     <Gender>
  98.                       <xsl:value-of select="@Value"/>
  99.                     </Gender>
  100.                   </xsl:when>
  101.                   <xsl:when test="@Name='Children'">
  102.                     <Children>
  103.                       <xsl:value-of select="@Value"/>
  104.                     </Children>
  105.                   </xsl:when>
  106.                   <xsl:when test="@Name='Email'">
  107.                     <Email1Address>
  108.                       <xsl:value-of select="@Value"/>
  109.                     </Email1Address>
  110.                   </xsl:when>
  111.                   <xsl:when test="@Name='Email2'">
  112.                     <Email2Address>
  113.                       <xsl:value-of select="@Value"/>
  114.                     </Email2Address>
  115.                   </xsl:when>
  116.                   <xsl:when test="@Name='Email3'">
  117.                     <Email3Address>
  118.                       <xsl:value-of select="@Value"/>
  119.                     </Email3Address>
  120.                   </xsl:when>
  121.                   <xsl:when test="@Name='Mobile'">
  122.                     <MobileTelephoneNumber>
  123.                       <xsl:value-of select="@Value"/>
  124.                     </MobileTelephoneNumber>
  125.                   </xsl:when>
  126.                   <xsl:when test="@Name='Nick Name'">
  127.                     <NickName>
  128.                       <xsl:value-of select="@Value"/>
  129.                     </NickName>
  130.                   </xsl:when>
  131.                   <xsl:when test="@Name='Spouse'">
  132.                     <Spouse>
  133.                       <xsl:value-of select="@Value"/>
  134.                     </Spouse>
  135.                   </xsl:when>
  136.                   <xsl:when test="@Name='Suffix'">
  137.                     <Suffix>
  138.                       <xsl:value-of select="@Value"/>
  139.                     </Suffix>
  140.                   </xsl:when>
  141.                   <xsl:when test="@Name='Primary Phone'">
  142.                     <PrimaryTelephoneNumber>
  143.                       <xsl:value-of select="@Value"/>
  144.                     </PrimaryTelephoneNumber>
  145.                   </xsl:when>
  146.                   <xsl:when test="@Name='Pager'">
  147.                     <PagerNumber>
  148.                       <xsl:value-of select="@Value"/>
  149.                     </PagerNumber>
  150.                   </xsl:when>
  151.                   <xsl:when test="@Name='Birthday'">
  152.                     <Birthday>
  153.                       <xsl:value-of select="@Value"/>
  154.                     </Birthday>
  155.                   </xsl:when>
  156.                   <xsl:when test="@Name='Anniversary'">
  157.                     <Anniversary>
  158.                       <xsl:value-of select="@Value"/>
  159.                     </Anniversary>
  160.                   </xsl:when>
  161.  
  162.  
  163.                 </xsl:choose>
  164.               </xsl:for-each>
  165.  
  166.             </xsl:when>
  167.  
  168.             <xsl:when test="@Name='Work'">
  169.  
  170.               <xsl:for-each select="Fields/Field">
  171.                 <xsl:choose>
  172.  
  173.                   <xsl:when test="@Name='Phone2'">
  174.                     <Business2TelephoneNumber>
  175.                       <xsl:value-of select="@Value"/>
  176.                     </Business2TelephoneNumber>
  177.                   </xsl:when>
  178.                   <xsl:when test="@Name='City'">
  179.                     <BusinessAddressCity>
  180.                       <xsl:value-of select="@Value"/>
  181.                     </BusinessAddressCity>
  182.                   </xsl:when>
  183.                   <xsl:when test="@Name='Country'">
  184.                     <BusinessAddressCountry>
  185.                       <xsl:value-of select="@Value"/>
  186.                     </BusinessAddressCountry>
  187.                   </xsl:when>
  188.                   <xsl:when test="@Name='Postcode'">
  189.                     <BusinessAddressPostalCode>
  190.                       <xsl:value-of select="@Value"/>
  191.                     </BusinessAddressPostalCode>
  192.                   </xsl:when>
  193.                   <xsl:when test="@Name='PO Box'">
  194.                     <BusinessAddressPostOfficeBox>
  195.                       <xsl:value-of select="@Value"/>
  196.                     </BusinessAddressPostOfficeBox>
  197.                   </xsl:when>
  198.                   <xsl:when test="@Name='State'">
  199.                     <BusinessAddressState>
  200.                       <xsl:value-of select="@Value"/>
  201.                     </BusinessAddressState>
  202.                   </xsl:when>
  203.                   <xsl:when test="@Name='Street'">
  204.                     <BusinessAddressStreet>
  205.                       <xsl:value-of select="@Value"/>
  206.                     </BusinessAddressStreet>
  207.                   </xsl:when>
  208.                   <xsl:when test="@Name='Fax'">
  209.                     <BusinessFaxNumber>
  210.                       <xsl:value-of select="@Value"/>
  211.                     </BusinessFaxNumber>
  212.                   </xsl:when>
  213.                   <xsl:when test="@Name='Address'">
  214.                     <BusinessLabel>
  215.                       <xsl:value-of select="@Value"/>
  216.                     </BusinessLabel>
  217.                   </xsl:when>
  218.                   <xsl:when test="@Name='Phone'">
  219.                     <BusinessTelephoneNumber>
  220.                       <xsl:value-of select="@Value"/>
  221.                     </BusinessTelephoneNumber>
  222.                   </xsl:when>
  223.                   <xsl:when test="@Name='Web'">
  224.                     <BusinessWebPage>
  225.                       <xsl:value-of select="@Value"/>
  226.                     </BusinessWebPage>
  227.                   </xsl:when>
  228.                   <xsl:when test="@Name='Assistant'">
  229.                     <AssistantName>
  230.                       <xsl:value-of select="@Value"/>
  231.                     </AssistantName>
  232.                   </xsl:when>
  233.                   <xsl:when test="@Name='Primary Phone'">
  234.                     <CompanyMainTelephoneNumber>
  235.                       <xsl:value-of select="@Value"/>
  236.                     </CompanyMainTelephoneNumber>
  237.                   </xsl:when>
  238.                   <xsl:when test="@Name='Company'">
  239.                     <CompanyName>
  240.                       <xsl:value-of select="@Value"/>
  241.                     </CompanyName>
  242.                   </xsl:when>
  243.                   <xsl:when test="@Name='Department'">
  244.                     <Department>
  245.                       <xsl:value-of select="@Value"/>
  246.                     </Department>
  247.                   </xsl:when>
  248.                   <xsl:when test="@Name='Manager'">
  249.                     <ManagerName>
  250.                       <xsl:value-of select="@Value"/>
  251.                     </ManagerName>
  252.                   </xsl:when>
  253.                   <xsl:when test="@Name='Profession'">
  254.                     <Profession>
  255.                       <xsl:value-of select="@Value"/>
  256.                     </Profession>
  257.                   </xsl:when>
  258.                   <xsl:when test="@Name='Title'">
  259.                     <JobTitle>
  260.                       <xsl:value-of select="@Value"/>
  261.                     </JobTitle>
  262.                   </xsl:when>
  263.  
  264.  
  265.                 </xsl:choose>
  266.               </xsl:for-each>
  267.  
  268.             </xsl:when>
  269.  
  270.             <xsl:when test="@Name='Other'">
  271.  
  272.               <xsl:for-each select="Fields/Field">
  273.                 <xsl:choose>
  274.                   <xsl:when test="@Name='City'">
  275.                     <OtherAddressCity>
  276.                       <xsl:value-of select="@Value"/>
  277.                     </OtherAddressCity>
  278.                   </xsl:when>
  279.                   <xsl:when test="@Name='Country'">
  280.                     <OtherAddressCountry>
  281.                       <xsl:value-of select="@Value"/>
  282.                     </OtherAddressCountry>
  283.                   </xsl:when>
  284.                   <xsl:when test="@Name='Postcode'">
  285.                     <OtherAddressPostalCode>
  286.                       <xsl:value-of select="@Value"/>
  287.                     </OtherAddressPostalCode>
  288.                   </xsl:when>
  289.                   <xsl:when test="@Name='PO Box'">
  290.                     <OtherAddressPostOfficeBox>
  291.                       <xsl:value-of select="@Value"/>
  292.                     </OtherAddressPostOfficeBox>
  293.                   </xsl:when>
  294.                   <xsl:when test="@Name='State'">
  295.                     <OtherAddressState>
  296.                       <xsl:value-of select="@Value"/>
  297.                     </OtherAddressState>
  298.                   </xsl:when>
  299.                   <xsl:when test="@Name='Street'">
  300.                     <OtherAddressStreet>
  301.                       <xsl:value-of select="@Value"/>
  302.                     </OtherAddressStreet>
  303.                   </xsl:when>
  304.                   <xsl:when test="@Name='Fax'">
  305.                     <OtherFaxNumber>
  306.                       <xsl:value-of select="@Value"/>
  307.                     </OtherFaxNumber>
  308.                   </xsl:when>
  309.                   <xsl:when test="@Name='Address'">
  310.                     <OtherLabel>
  311.                       <xsl:value-of select="@Value"/>
  312.                     </OtherLabel>
  313.                   </xsl:when>
  314.                   <xsl:when test="@Name='Phone'">
  315.                     <OtherTelephoneNumber>
  316.                       <xsl:value-of select="@Value"/>
  317.                     </OtherTelephoneNumber>
  318.                   </xsl:when>
  319.  
  320.  
  321.                 </xsl:choose>
  322.               </xsl:for-each>
  323.  
  324.             </xsl:when>
  325.  
  326.           </xsl:choose>
  327.  
  328.  
  329.         </xsl:for-each>
  330.  
  331.  
  332.  
  333.  
  334.  
  335.       </contact>
  336.     </xsl:for-each>
  337.   </xsl:template>
  338.  
  339. </xsl:stylesheet>